<?php

class ContactForm extends sfForm {

	public function configure() {

		$this->setWidgets(array(
        'firstname' => new sfWidgetFormInput(),
		    'lastname'  => new sfWidgetFormInput(),
		    'address'   => new sfWidgetFormInput(),
		    'zip'       => new sfWidgetFormInput(),
		    'city'      => new sfWidgetFormInput(),
		    'phone'     => new sfWidgetFormInput(),
		    'email'     => new sfWidgetFormInput(),
		    'subject'   => new sfWidgetFormInput(),
		    'content'   => new sfWidgetFormTextarea(),
		    'captcha' => new sfWidgetFormInput()
		));

		$this->widgetSchema->setLabels(array(
      'firstname'     => 'Nom * :',
      'lastname'      => 'Prénom',
		  'address'       => 'Adresse',
		  'zip'           => 'Code Postal',
		  'city'          => 'Ville',
		  'phone'         => 'Téléphone',
		  'email'         => 'Email * :',
		  'subject'       => 'Sujet * :',
		  'content'       => 'Contenu *:',
		  'captcha'       => 'Entrer le code vérification *:',
		
		));

		$this->setValidators(array(
        'firstname'    => new sfValidatorString(
                            array(),
                            array(
                              'required' => 'Vous devez spécifier un nom'
                            )
                          ),
        'lastname'    => new sfValidatorString(
                            array('required' => false),
                            array(
                              'invalid' => 'Vous devez spécifier une chaine de caractère'
                            )
                          ),
        'address'    => new sfValidatorString(
                            array('required' => false),
                            array(
                              'invalid' => 'Vous devez spécifier une chaine de caractère'
                            )
                          ),
        'zip'    => new sfValidatorString(
                            array('required' => false),
                            array(
                              'invalid' => 'Vous devez spécifier une chaine de caractère'
                            )
                          ),
        'city'    => new sfValidatorString(
                            array('required' => false),
                            array(
                              'invalid' => 'Vous devez spécifier une chaine de caractère'
                            )
                          ),
        'phone'    => new sfValidatorString(
                            array('required' => false),
                            array(
                              'invalid' => 'Vous devez spécifier une chaine de caractère'
                            )
                          ),
		                      
		    'email'        => new sfValidatorEmail(
                            array(),
		                        array(
		                            'required' => 'Vous devez spécifier un email',
		                            'invalid'  => 'Votre email n\'est pas valide'
		                        )
		                      ),
		    'subject'      => new sfValidatorString(
		                        array(),
		                        array(
		                          'required'  => 'Vous devez spécifier un sujet'
		                        )
		                      ),
		    'content'      => new sfValidatorString(
		                        array(
		                          'max_length' => 500,
		                        ),
		                        array(
		                          'required' => 'Vous devez spécifier un contenu',
		                          'max_length'  => 'Vous êtes limité à 500 caractères'
		                        )
		                      ),
		    'captcha' => new sfValidatorCaptchaGD(array('length' => 4, 'required' => true), array('length' => 'Le code doit contenir %length% caractères', 'captcha' => 'Le code de sécurité est invalide', 'required' => 'Le code de sécurité est obligatoire')),
		                      
		));

		$this->widgetSchema->setNameFormat('contact[%s]');
	}
}

?>